import { DynamicModule, Global, Module } from "@nestjs/common"

//3 动态模块: 动态模块主要就是为了给模块传递参数 可以给该模块添加一个静态方法 用来接受参数
interface Options {
  testParams: string
}

@Global()
@Module({})
export class DymicModule { 
  static forRoot(options: Options): DynamicModule {
    return {
      module: DymicModule,
      providers: [{
        provide: "Dymic",
        useValue: {baseApi: '/api/' + options.testParams}
      }],
      exports: [
        {
          provide: "Dymic",
          useValue: {baseApi: '/api/' + options.testParams}
        }
      ]
    }
  }
}